package com.evaluation.kexingcp.admin.api.vo;

import com.alibaba.excel.annotation.ExcelIgnore;
import com.alibaba.excel.annotation.ExcelProperty;
import com.alibaba.excel.annotation.write.style.ColumnWidth;
import com.evaluation.kexingcp.common.excel.annotation.ExcelLine;
import lombok.Data;

import jakarta.validation.constraints.NotBlank;
import java.io.Serializable;
import java.time.LocalDateTime;

/**
 * 用户excel 对应的实体
 *
 * @author kexingcp
 * @date 2021/8/4
 */
@Data
@ColumnWidth(30)
public class UserExcelVO implements Serializable {

	private static final long serialVersionUID = 1L;

	/**
	 * 导入时候回显行号
	 */
	@ExcelLine
	@ExcelIgnore
	private Long lineNum;

	/**
	 * 主键ID
	 */
	@ExcelProperty("用户编号")
	private Long userId;

	/**
	 * 用户名
	 */
	@NotBlank(message = "用户名不能为空")
	@ExcelProperty("用户名")
	private String username;

	/**
	 * 手机号
	 */
	@NotBlank(message = "手机号不能为空")
	@ExcelProperty("手机号")
	private String phone;

	/**
	 * 手机号
	 */
	@NotBlank(message = "昵称不能为空")
	@ExcelProperty("昵称")
	private String nickname;

	/**
	 * 手机号
	 */
	@NotBlank(message = "姓名不能为空")
	@ExcelProperty("姓名")
	private String name;

	/**
	 * 手机号
	 */
//	@NotBlank(message = "邮箱不能为空")
	@ExcelProperty("邮箱")
	private String email;

	/**
	 * 部门名称
	 */
	@ExcelProperty("部门名称")
	private String deptName;


	@ExcelProperty("年级名称")
	private String gradeName;

	@ExcelProperty("班级名称")
	private String clazzName;


	/**
	 * 创建时间
	 */
	@ExcelProperty(value = "创建时间")
	private LocalDateTime createTime;

	@ExcelProperty(value = "年龄")
	private int age;

	@ExcelProperty(value = "学历(小学,初中,高中,中专,大专,本科,硕士,博士)")
	private String edu;

	@ExcelProperty(value = "性别(男,女,未知)")
	private String sex;

	@ExcelProperty(value = "职业(教师,公务员,企业员工,学生,家长,农民,军人,干部,工人,知识分子,其他)")
	private String work;

	@ExcelProperty(value = "独生子女(是,否)")
	private String oneChild;

	@ExcelProperty(value = "陪伴情况(父母一方陪伴,留守儿童,父母双方陪伴)")
	private String partnerStatus;

	@ExcelProperty(value = "父母婚姻(正常,再婚,单亲,离异)")
	private String parentMarriage;

	@ExcelProperty(value = "婚姻情况(未婚、已婚、丧偶、再婚)")
	private String marriage;

}
